Extensible Host Language for Domain-Specific Languages
نویسندگان
چکیده
Programming languages greatly influence the way how programs are created and evolved. This means that the use of appropriate language for solved problem can greatly increase developer productivity. Composition of languages can provide great help in construction of a new language from existing components and for integration of several languages that may be needed to effectively solve a complex problem. In this paper we analyze the composition problem on the two levels: composition of languages and composition of concepts in a language. Possibilities of transition from language composition to concepts composition are also presented. Based on that, we propose a framework of languages construction based on concept composition that aims to support reusability of language elements and tools. It uses common host syntax for developed languages. Their semantics is defined in a general-purpose language. Proposed approach is demonstrated on example languages developed using prototype implementation.
منابع مشابه
Testing Extensible Language Debuggers
Extensible languages allow incremental extensions of a host language with domain specific abstractions. Debuggers for such languages must be extensible as well to support debugging of different language extensions at their corresponding abstraction level. As such languages evolve over time, it is essential to constantly verify their debugging behavior. For this purpose, a General Purpose Langua...
متن کاملExtensible Grammars for Homogeneous Language Embedding
Homogeneous language embedding allows syntactically distinct Domain Specific Languages (DSLs) to be embedded in a host language in co-operation with its compiler. Although such embedded languages can define an entirely new parsing mechanism, they can extend the host languages parser, allowing DSLs and the host language to be arbitrarily interleaved. The μ-calculus is a mechanism for formalising...
متن کاملEmbedding Languages without Breaking Tools
Domain-specific languages (DSLs) are increasingly used as embedded languages within general-purpose host languages. DSLs provide a compact, dedicated syntax for specifying parts of an application related to specialized domains. Unfortunately, such language extensions typically do not integrate well with the development tools of the host language. Editors, compilers and debuggers are either unaw...
متن کاملModular Domain-Specific Language Extensions
Software development is a time-consuming, and error-prone process. A significant part of the problem is caused by the large semantic gap between the programmer’s high-level understanding of the problem and the relatively low-level language in which the problem solutions are encoded. General purpose language features such as generics in object-oriented programming or higher-order functions are h...
متن کاملExtensible languages for flexible and principled domain abstraction
Most programming languages are designed for general-purpose software development in a one-size-fits-all fashion: They provide the same set of language features and constructs for all possible applications programmers ever may want to develop. As with shoes, the one-size-fits-all solution grants a good fit to few applications only. The trend toward domain-specific languages, model-driven develop...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Computing and Informatics
دوره 35 شماره
صفحات -
تاریخ انتشار 2016